Raster-based rendering devices include hard-copy print devices (for example, ink-jet or laser printers) as well as visual display devices (for example, display devices using cathode ray tubes or liquid crystal displays). These raster-based devices use a coding technique which codes picture elements (commonly referred to as pixels) into a digital data format. The amount of such data may be tremendous, and reductions in the amount of data are needed to compensate for limitations in input/output data rates and input/output buffer sizes. Data compression techniques are used to reduce the amount of data for storage and transfer. With raster data, the goal is to reduce the quantity of data without affecting the visual quality of the rendered image. Generally, the thresholds defining visual quality are established based on the capabilities of the human visual system.
Some techniques for compressing image data are based on the Joint Photographic Experts Group (JPEG) industry standard. However, the use of JPEG-based algorithms for compressing image data can be problematic for rendering “compound documents” (a document that includes both text and graphics). While the image data may be effectively compressed, text data may be visibly degraded even at relatively low levels of compression. Moreover, the effectiveness of JPEG-based compression is reduced when compressing image data that have been scaled using a pixel-replication scaling algorithm common to rasterized compound documents (e.g., 150 dot-per-inch image data scaled up to 300 or 600 dots-per-inch). Thus, JPEG-based techniques do not provide the best solution for compressing data in some applications, such as hard-copy printers.
Consequently, a faster raster-based data processing and compression technique useful for hard-copy printing, and also for visual displays, has been developed. This technique is described in U.S. Pat. No. 6,304,339, filed Nov. 16, 1998, by S. O. Miller et al., and entitled “Compound Document Page Data Processing,” assigned to the assignee of the present invention and hereby incorporated by reference.
In essence, the technique used in the reference includes a pre-filtering stage in which the amount of image data is reduced by coalescing adjacent pixels having substantially the same color values into a pixel block which can then be compressed. A pre-defined filtering threshold is used to determine the number of pixels that can be coalesced into a block without degrading the quality of the rendered image. The filtering threshold defines a tolerance that is applied to the color values of adjacent pixels. Generally speaking, adjacent pixels whose color values may be different but still within the tolerance can be coalesced into a pixel block. The pixels in a block are effectively set to a single color value to enhance compressibility. Block sizes up to 8×4 pixels are created using the technique described in the reference.
While the referenced technique works well at image resolutions such as 600 dots-per-inch (dpi), it can have disadvantages at the higher image resolutions (1200 dpi, 2400 dpi, or more) coming into use. The amount of data for storage and transfer is increased at higher resolutions, and therefore it is desirable to achieve a higher rate of compression. In order to achieve higher compression rates using the referenced technique, it is necessary to set the filtering threshold very high. With a higher filtering threshold, larger differences in color values between adjacent pixels in an image are tolerated. Thus, for example, if the difference between the color of the image background and the color of an image object is close enough (within the tolerance established by the filtering threshold), adjacent pixels in the background and in the object may be included in the same block of pixels and treated as having the same color values. This may generate “jaggies” in the image border, degrading the quality of the rendered image.
Accordingly, what is needed is a method and/or system that can allow higher compression rates for higher resolution images without degrading the quality of the rendered image. The present invention provides a novel solution to the above needs.